home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.cs.arizona.edu
/
ftp.cs.arizona.edu.tar
/
ftp.cs.arizona.edu
/
icon
/
newsgrp
/
group97a.txt
/
000073_icon-group-sender _Thu Mar 6 08:55:25 1997.msg
< prev
next >
Wrap
Internet Message Format
|
2000-09-20
|
2KB
Received: by cheltenham.cs.arizona.edu; Thu, 6 Mar 1997 13:36:14 MST
Date: Thu, 6 Mar 1997 08:55:25 -0800
From: kwalker@orville.premenos.com (Ken Walker)
Message-Id: <199703061655.IAA10379@varda.premenos.com>
To: icon-group@cs.arizona.edu, bpr@best.com
Subject: Re: Recursive directory traversal in Icon
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Md5: /S59TrK46z3UOLzx5KRRtA==
Errors-To: icon-group-errors@cs.arizona.edu
Status: RO
Content-Length: 1715
> From: Brian Rogoff <bpr@best.com>
> Subject: Recursive directory traversal in Icon
>
> (2) Why no module system? I've found modules helpful in every language I've
> worked with, and Icon doesn't seem to be different in that it could use
> such a system. I noticed someone else mention this, but it is not in
> the FAQ. Perl has benefitted greatly from the inclusion of modules.
6 or 7 years ago, I implemented modules in ISI's attempt at a commercial
version of Icon (technicall, the U of A's version with proprietary extensions).
We produced a product, but the venture didn't get anywhere. The module
feature allowed better information hiding and helped manage the global
name space. A more "modern" approach to dealing with these (and other)
problems is "objects". Even before ISI's version of Icon, Clint Jeffery
created IDOL, an object-oriented version of Icon, implemented with a
preprocessor. The preprocessor is distributed as a part of the "Icon
Program Library".
It is possible to have both objects and modules in a language. Java packages
are modules. Within them you can declare classes. Because classes cannot
be nested and give the user of the class no control over visability,
classes don't give implementer as much cabability for information hiding
and doesn't give users as much control over their the global name space
as you'd like. Note that while objects are useful for projects of all
sizes, modules really become helpful only for larger projects.
Maybe someday there will be a verion of Icon with both features, but someone
will have to be interested enough and have the resources to implement it.
Ken Walker, kwalker@premenos.com
Premenos Coporation, Concord, Ca. 94520